#pragma once

#ifndef __NATIVE_BEGIN
#	define __NATIVE_BEGIN() __pragma(managed(push, off))
#	define __NATIVE_END() __pragma(managed(pop))
#endif

#ifndef __MANAGED_BEGIN
#	define __MANAGED_BEGIN() __pragma(managed(push, on))
#	define __MANAGED_END() __pragma(managed(pop))
#endif

#ifndef __NATIVE
#	define __NATIVE __pragma(unmanaged)
#endif

#ifndef __MANAGED
#	define __MANAGED __pragma(managed)
#endif